<?xml version="1.0"?>
<doc>
    <assembly>
        <name>GoodStuff</name>
    </assembly>
    <members>
        <member name="T:GoodStuff.Web.Controls.CustomValidationError">
            <summary>
            Custom validator which can be used to display an non-validation error/message in the validationsummary. 
            Example: After sending an e-mail based on a valid filled in form, you want to show an errormessage because the SMTP couldn't be reached.
            </summary>
            <example>
            protected void butSend_Click(object sender, EventArgs e)
            {
                Page.Validators.Add(new ValidationSummaryMessage("Foutje... bedankt", "EmailUs"));
                return; // exit current method/execution.
            }
            </example>
        </member>
        <member name="M:GoodStuff.Web.Controls.CustomValidationError.#ctor(System.String)">
            <summary>
            Maakt een nieuwe melding.
            </summary>
            <param name="message"></param>
        </member>
        <member name="T:GoodStuff.Web.Controls.Sprite">
            <summary>
            Replacement class for the 'Image' control that uses the CSS Sprite engine to free up bandwidth
            </summary>
            <todo>
            Generate a designer that just displays the real file.
            </todo>
        </member>
        <member name="P:GoodStuff.Web.Controls.Sprite.FileName">
            <summary>
            The Relative filename of the sprite.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ImageCropping">
            <summary>
            This control allows 
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.ImageCropping.PerformCrop(System.Drawing.Image,System.Boolean)">
            <summary>
            After a postback, JQuery will have injected the coordinates on the given image.
            Example. btnCrop.Click += { PerformCrop(); }
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ConditionalRepeater">
            <summary>
            You'd be stupid not to fill the EmptyTemplate folder when using this ConditionalRepeater.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CommandDropDownList">
            <summary>
            A DropDownList expanded with CommandName and CommandArgument so that
            it can be used inside a repeater for example. The SelectedIndexChange event will be bubbled.
            </summary>
        </member>
        <member name="P:GoodStuff.Validation.IValidationError.PropertyName">
            <summary>
            This property name is require to be able to pinpoint the actual error back to the input field.
            </summary>
        </member>
        <member name="T:GoodStuff.Validation.ValidationError">
            <summary>
            TODO: Sample concrete class.
            </summary>
        </member>
        <member name="T:GoodStuff.MsBuild.TransformationConfiguration">
            <summary>
            Serialized class that contains the optional 'transformation.xml' configuration section
            to drive the transformation task.
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.IExceptionHandler">
            <summary>
            Allows extensibility for ExceptionHandlerModule
            </summary>
        </member>
        <member name="T:GoodStuff.Web.RequestCache">
            <summary>
            Contains extensions for caching objects in the HttpContext.Items.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.GenericController`1">
            <summary>
            Generic controller for Supervising controller pattern.
            </summary>
            <typeparam name="TView"></typeparam>
        </member>
        <member name="M:GoodStuff.Web.GenericController`1.#ctor(`0)">
            <summary>
            Creates a new Controller 
            </summary>
            <param name="view"></param>
        </member>
        <member name="M:GoodStuff.Web.GenericController`1.#ctor(GoodStuff.ICanResolveDependencies,`0)">
            <summary>
            Creates a new Controller 
            </summary>
            <param name="view"></param>
        </member>
        <member name="M:GoodStuff.Web.GenericController`1.InitializeView">
            <summary>
            Initializes the view for this controller
            </summary>
        </member>
        <member name="M:GoodStuff.Web.GenericController`1.BindView">
            <summary>
            Binds the controller data to the view.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.GenericController`1.View">
            <summary>
            Gets the View that is attached to this controller
            </summary>
        </member>
        <member name="M:GoodStuff.Web.IViewExceptionHandler.AddException(System.Exception)">
            <summary>
            Add any business logic exception to the validation framework.
            </summary>
            <param name="ee"></param>
        </member>
        <member name="T:GoodStuff.Web.Controls.ConditionalHyperLink">
            <summary>
            Een variant van de bekende HyperLink die geen link is wanneer deze disabled is.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CommandMenu">
            <summary>
            Generates a list of LinkButtons with minimum overhead on html and viewstate.
            All commands share a CommandArgument value, and will be rendered in a UL/LI list.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.CommandMenu.System#Web#UI#IPostBackEventHandler#RaisePostBackEvent(System.String)">
            <summary>
            The CssClass that is being rendered. 
            </summary>
        </member>
        <member name="E:GoodStuff.Web.Controls.CommandMenu.Command">
            <summary>
            A command event is fire whenever an enabled menuitem is clicked by the client.
            If this event is not handled, the command is bubbled.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.CommandMenu.MenuItems">
            <summary>
            The collection of menu items to show. You can also specify the commands
            in the .aspx file as children of the control, in the same way as ListBox works.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.CommandMenu.CommandArgument">
            <summary>
            For every menuitem the commandargument is the same. This is great for providing different
            command for the same item.
            </summary>
        </member>
        <member name="T:GoodStuff.Text.CSVStreamWriter">
            <summary>
            Generates a so-called Comma Separated Values file, with a configurable separator.
            </summary>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.#ctor(System.IO.TextWriter,System.String)">
            <summary>
            Construct a new CSVStreamWriter
            </summary>
            <param name="stream">The stream used to write the actual contents</param>
            <param name="separator">The separator to be used</param>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.toString">
            <summary>
            Returns the internal stream used for debugging only.
            </summary>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.Write(System.Int32)">
            <summary>
            Writes a numeric value to the output stream
            </summary>
            <param name="value">The value to write</param>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.Write(System.String)">
            <summary>
            Writes a stringvalue to the output stream
            </summary>
            <param name="value">the value to write</param>
            <remarks>If the value to be written contains the separator string, the value is escaped with quotes. Any quotes already 
            in the value, will be doubled.</remarks>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.WriteLine">
            <summary>
            Ends the current line and starts a new one.
            </summary>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamWriter.WriteEmpty">
            <summary>
            Write and empty value to the output. Equivalent to Write(string.Empty)
            </summary>
        </member>
        <member name="P:GoodStuff.Text.CSVStreamWriter.Separator">
            <summary>
            Gets the separator that separates the columns of the output
            </summary>
        </member>
        <member name="T:GoodStuff.Text.CSVStreamReader">
            <summary>
            Utility class to read Comma Separated Value files.
            </summary>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamReader.#ctor(System.IO.TextReader,System.String)">
            <summary>
            Construct a new CSV reader with a specified separator
            </summary>
            <param name="reader">The TextReader to read contents from</param>
            <param name="separator">The separator used in that file</param>
        </member>
        <member name="M:GoodStuff.Text.CSVStreamReader.MoveNext">
            <summary>
            Moves the reader to the next row.
            </summary>
            <remarks>Will throw an exception if you try to read past EndOfFile</remarks>
        </member>
        <member name="P:GoodStuff.Text.CSVStreamReader.Row">
            <summary>
            Returns the current row number, starting with Row 1 for any valid file
            </summary>
        </member>
        <member name="P:GoodStuff.Text.CSVStreamReader.EndOfFile">
            <summary>
            Gets a value that signifies the end of the stream.
            </summary>
        </member>
        <member name="P:GoodStuff.Text.CSVStreamReader.Columns">
            <summary>
            Gets the number of columns in the current row.
            </summary>
        </member>
        <member name="P:GoodStuff.Text.CSVStreamReader.Item(System.Int32)">
            <summary>
            Returns the value of a numbered column as a string value
            </summary>
            <param name="index">the column number to return the value for. Stars at 0</param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerConfigurationSectionHandler">
            <summary>
            ConfigurationSectionHandler for the ExceptionHandlerModule
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerConfiguration">
            <summary>
            Configuration class for the ExceptionHandlerModule
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerConfiguration.Enabled">
            <summary>
            Master switch
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerExclude">
            <summary>
            Exclude rule class
            </summary>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerExclude.#ctor">
            <summary>
            Creates a new Exclude filter with default settings.
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerExclude.SourceIP">
            <summary>
            The Source IP-address to filter on
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerExclude.TypeName">
            <summary>
            The name of the type of the Exception
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerExclude.Message">
            <summary>
            The message of the Exception to filter on.
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerExclude.CompareMethod">
            <summary>
            The comparemethod to check if a rule applies or not based on the filter for the exceptionmessage
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerExceptionMessageCompareMethod">
            <summary>
            The method to use for checking if the configured text matches the message of the Exception. Defaultmethod = Contains.
            </summary>
        </member>
        <member name="F:GoodStuff.Diagnostics.ExceptionHandlerExceptionMessageCompareMethod.Exact">
            <summary>
            The configured text has to be equal as the exact message of the exception.
            </summary>
        </member>
        <member name="F:GoodStuff.Diagnostics.ExceptionHandlerExceptionMessageCompareMethod.Contains">
            <summary>
            The message of the exception must contains the configured text.
            </summary>
        </member>
        <member name="F:GoodStuff.Diagnostics.ExceptionHandlerExceptionMessageCompareMethod.StartsWith">
            <summary>
            The message of the exception must start with the configured text
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerMailerConfiguration">
            <summary>
            Configuration for the Mailerhandler of the ExceptionHandlerModule
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerMailerConfiguration.From">
            <summary>
            The from e-mailaddress
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerMailerConfiguration.Recipients">
            <summary>
            The recipients that will receive the e-mail (separated by ; or ,)
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerMailerConfiguration.Excludes">
            <summary>
            List of exclude filters
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerSqlConfiguration">
            <summary>
            Configuration for the SQLhandler of the ExceptionHandlerModule
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerSqlConfiguration.ConnectionName">
            <summary>
            The namne of the connectionstring to use.
            </summary>
        </member>
        <member name="P:GoodStuff.Diagnostics.ExceptionHandlerSqlConfiguration.Excludes">
            <summary>
            List of exclude filters
            </summary>
        </member>
        <member name="T:GoodStuff.Data.Linq.SortExtenions">
            <summary>
            Extension set to provide dynamic linq sort operations
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.SortExtenions.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Boolean)">
            <summary>
            Allow the OrderBy or OrderbyDescending to be based on a property instead of a method.
            </summary>
            <typeparam name="TSource"></typeparam>
            <typeparam name="TKey"></typeparam>
            <param name="source"></param>
            <param name="keySelector"></param>
            <param name="ascending"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.SortExtenions.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Boolean)">
            <summary>
            Allow the ThenBy or ThenBybyDescending to be based on a property instead of a method.
            </summary>
            <typeparam name="TSource"></typeparam>
            <typeparam name="TKey"></typeparam>
            <param name="source"></param>
            <param name="keySelector"></param>
            <param name="ascending"></param>
            <returns></returns>
        </member>
        <!-- Badly formed XML comment ignored for member "M:GoodStuff.Data.Linq.SortExtenions.GenericSort``1(System.Linq.IQueryable{``0},System.String,System.Boolean)" -->
        <member name="T:GoodStuff.Data.Linq.SortExtenions.ISorter`1">
            <summary>
            Helper interface : ISorter
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:GoodStuff.Data.Linq.SortExtenions.ISorter`1.Sort(System.Linq.IQueryable{`0},System.String,System.Boolean)">
            <summary>
            Sorts a dataset
            </summary>
            <param name="source">the source collection</param>
            <param name="attribute">the name of the property to sort on</param>
            <param name="ascending">the sortdirection. ascending = true, descending = false</param>
            <returns>A sorted resultset</returns>
        </member>
        <member name="T:GoodStuff.Data.Linq.SortExtenions.GenericSorter`2">
            <summary>
            A Genericsorter which sorts datasets based on the given property name and given sortdirection
            </summary>
            <typeparam name="T">The Type of object we're dealing with.</typeparam>
            <typeparam name="PT">The Type of the property we're sorting on.</typeparam>
        </member>
        <member name="M:GoodStuff.Data.Linq.SortExtenions.GenericSorter`2.Sort(System.Linq.IQueryable{`0},System.String,System.Boolean)">
            <summary>
            Sorts the dataset
            </summary>
            <param name="source">the source collection</param>
            <param name="attribute">the name of the property to sort on</param>
            <param name="ascending">the sortdirection. ascending = true, descending = false</param>
            <returns>A sorted resultset</returns>
        </member>
        <member name="T:GoodStuff.ConfigurationHelper">
            <summary>
            Configuration helper class that exposes generic
            section retrieval functionality
            </summary>
        </member>
        <member name="M:GoodStuff.ConfigurationHelper.GetSection``1(System.String)">
            <summary>
            Retrieves a typed configuration section for
            the current application's default configuration
            </summary>
            <typeparam name="T">
            The type to bind to the configuration section</typeparam>
            <param name="sectionName">
            The name of the configuration section</param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.ConfigurationHelper.GetSection``1">
            <summary>
            Retrieves a typed configuration section for
            the current application's default configuration
            </summary>
            <typeparam name="T">
            The type to bind to the configuration section</typeparam>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.ConfigurationHelper.GetConnectionString">
            <summary>
            Gets the default connection string with the default name 'Database'.
            </summary>
            <param name="connectionName"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Xml.XmlMerger">
            <summary>
            Merges two document trees together.
            </summary>
            <remarks>
            This merger class has been specifically developed to merge configuration files. The default node match algoritm 
            can separated repeating nodes by detecting a 'name=' or 'key=' attribute.
            </remarks>
        </member>
        <member name="T:GoodStuff.Web.QueryStringTools">
            <summary>
            Utility class voor het omgaan met QueryStrings
            </summary>
        </member>
        <member name="M:GoodStuff.Web.QueryStringTools.GetParameter``1(System.Web.HttpRequest,System.String,System.Boolean,``0)">
            <summary>
            Reads and converts querystring parameters to the correct type.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="request"></param>
            <param name="parameterName"></param>
            <param name="required"></param>
            <param name="defaultValue"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.QueryStringTools.GetParameter``1(System.Web.UI.Page,System.String,``0)">
            <summary>
            Reads and converts querystring parameters to the correct type. If no parameter value was found,
            a default value will be used.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="page"></param>
            <param name="parameterName"></param>
            <param name="defaultValue"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.QueryStringTools.GetParameter``1(System.Web.UI.Page,System.String)">
            <summary>
            Reads and converts querystring parameters to the correct type. If no parameter value was found,
            an exception is thrown.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="page"></param>
            <param name="parameterName"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.QueryStringTools.GetParameter(System.Web.UI.Page,System.String,System.Boolean)">
            <summary>
            Reads querystring parameters and leaves it a string.
            </summary>
            <param name="page">current Page</param>
            <param name="parameterName">name of the parameter</param>
            <param name="required">required? if required but not found, an error will be thrown</param>
            <returns>the value of the querystringparameter</returns>
        </member>
        <member name="M:GoodStuff.Web.QueryStringTools.GetParameter(System.Web.HttpRequest,System.String,System.Boolean)">
            <summary>
            Reads querystring parameters and leaves it a string.
            </summary>
            <param name="page">current HttpRequest</param>
            <param name="parameterName">name of the parameter</param>
            <param name="required">required? if required but not found, an error will be thrown</param>
            <returns>the value of the querystringparameter</returns>
        </member>
        <member name="T:GoodStuff.Web.QueryStringException">
            <summary>
            Exception class for QueryString failures.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.QueryStringException.#ctor(System.String,System.String)">
            <summary>
            Creates a new querystring exception 
            </summary>
            <param name="parameterName"></param>
            <param name="message"></param>
        </member>
        <member name="M:GoodStuff.Web.QueryStringException.ToString">
            <summary>
            Translates this exception to a readable format.
            </summary>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.Web.QueryStringException.ParameterName">
            <summary>
            The parameter name responsible for throwing the exception.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.IView">
            <summary>
            Basis-view voor het Model-View-Presenter pattern. A Page object already implements most of these
            but user control may need to override behaviour.
            </summary>
            <remarks>
            Tightly coupled to ASP.Net without depending on it.</remarks>
        </member>
        <member name="T:GoodStuff.Web.IViewBase">
            <summary>
            Basis-view voor het Model-View-Presenter pattern. A Page object already implements most of these
            but user control may need to override behaviour.
            </summary>
            <remarks>
            Tightly coupled to ASP.Net without depending on it.</remarks>    
        </member>
        <member name="P:GoodStuff.Web.IViewBase.IsPostBack">
            <summary>
            Determines if the current request is a postback.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.IViewValidator.Validate">
            <summary>
            Forces a call to the validation framework.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.IViewValidator.IsValid">
            <summary>
            Returns true when the pagina contains no errors
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.Trackers">
            <summary>
            Generic footer control to embed customizable statistics trackers. All tracker scripts
            and replacements can be configured using the web.config/trackerConfiguration
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.Design.CaptchaImageControlConverter">
            <summary>
            Summary description for CaptchaImageControlConverter.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ScheduleRow">
            <summary>
            Class responsible for rendering a single resource's time table.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CommandTextBox">
            <summary>
            Wordt gebruikt voor het invoeren van de datums en referenties in het detailscherm.
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessagingService">
            <summary>
            Facade singleton for providing messaging services like email etc.
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.MessagingService.CreateMessage">
            <summary>
            Create a new message so clients can populate and send the message.
            </summary>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Providers.MessagingService.SendMessage(GoodStuff.Providers.Message)">
            <summary>
            Send the message.
            </summary>
            <param name="message"></param>
        </member>
        <member name="P:GoodStuff.Providers.MessagingService.Provider">
            <summary>
            The provider used for this service instance.
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.MessagingService.Providers">
            <summary>
            A collection of all known providers.
            </summary>
        </member>
        <member name="T:GoodStuff.Validation.IValidationRule`1">
            <summary>
            Defines a rule that must be satisfied in order to succeed. This can anything really.
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionMailer">
             <summary>
             De ErrorMailSender module sends an e-mail on every Exception in the running asp.Net webapplication
             </summary>
             <example>
             Add the following &lt;appSettings&gt; to the &lt;configuration&gt; sectie
             &lt;add key="ExceptionMailerFrom"       value="sender@mail.com"/&gt;
             &lt;add key="ExceptionMailerRecipients  value="person1@mail.com;person2@mail.com"/&gt;
             &lt;add key="ExceptionMailerSmtpServer" value="smtp.mail.nl"/&gt; &lt;-- optional
            
             &lt;httpModules&gt;
             	&lt;add type="GoodStuff.Diagnostics.ExceptionMailer, GoodStuff" name="ExceptionMailer"/&gt;
             &lt;/httpModules&gt;
             </example>
        </member>
        <member name="T:GoodStuff.Web.Controls.ProgressBar">
            <summary>
            Summary description for ProgressBar.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.ProgressBar.ClientValueID">
            <summary>
            A clientside ID that can be used to retrieve/set the value by scripting.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.Alert">
            <summary>
            Voegt een Javascript Alert statement toe aan de output
            wanneer de <see cref="P:GoodStuff.Web.Controls.Alert.Message"/> property gevuld is.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.Alert.Message">
            <summary>
            De af te tonen melding. Let erop dat alleen quotes en newlines escaped worden.
            </summary>
            <example>
            <code>
            this.Controls.Add(new UXP.Web.UI.Message("Hello world!"));
            </code>
            </example>
        </member>
        <member name="T:GoodStuff.Net.PopClient">
            <summary>
            This class enables you to connect to a pop3 server and retrieve all the messages
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessagingException">
            <summary>
            Wrapper exception used to group exceptions caused by the messaging provider classes.
            </summary>
        </member>
        <member name="T:GoodStuff.Diagnostics.TraceTextWriter">
            <summary>
            A generic TextWriter that dumps all its output to the trace window.
            </summary>
        </member>
        <member name="M:GoodStuff.Diagnostics.TraceTextWriter.WriteLine(System.String)">
            <summary>
            Writes a line of text to the trace log.
            </summary>
            <param name="value"></param>
        </member>
        <member name="P:GoodStuff.Diagnostics.TraceTextWriter.Encoding">
            <summary>
            Returns the encoding for this Textwriter.
            </summary>
        </member>
        <member name="T:GoodStuff.Data.Linq.HeavyOperationExtensions">
            <summary>
            Extensions for Linq To SQL
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.BulkCopy``1(System.Data.Linq.Table{``0},System.Collections.Generic.IEnumerable{``0},System.Data.Common.DbTransaction)">
            <summary>
            Copy the dataset by using SQL Bulk methods. (default timeout = 90 seconds)
            </summary>
            <typeparam name="TEntity">The type of objects</typeparam>
            <param name="table"></param>
            <param name="entities"></param>
            <param name="transaction">DB Transaction</param>
            <remarks>Make sure the order of the columns in your table and within LINQ-mapping are equal!</remarks>
        </member>
        <!-- Badly formed XML comment ignored for member "M:GoodStuff.Data.Linq.HeavyOperationExtensions.BulkCopy``1(System.Data.Linq.Table{``0},System.Collections.Generic.IEnumerable{``0},System.Data.Common.DbTransaction,System.Int32)" -->
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.DeleteBatch``1(System.Data.Linq.Table{``0},System.Linq.IQueryable{``0})">
            <summary>
            Immediately deletes all entities from the collection with a single delete command. (default timeout = 90 seconds)
            </summary>
            <typeparam name="TEntity">Represents the object type for rows contained in <paramref name="table"/>.</typeparam>
            <param name="table">Represents a table for a particular type in the underlying database containing rows are to be deleted.</param>
            <param name="entities">Represents the collection of items which are to be removed from <paramref name="table"/>.</param>
            <returns>The number of rows deleted from the database.</returns>
            <remarks>
            <para>Similiar to stored procedures, and opposite from DeleteAllOnSubmit, rows provided in <paramref name="entities"/> will be deleted immediately with no need to call <see cref="M:System.Data.Linq.DataContext.SubmitChanges"/>.</para>
            <para>Additionally, to improve performance, instead of creating a delete command for each item in <paramref name="entities"/>, a single delete command is created.</para>
            </remarks>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.DeleteBatch``1(System.Data.Linq.Table{``0},System.Linq.IQueryable{``0},System.Int32)">
            <summary>
            Immediately deletes all entities from the collection with a single delete command.
            </summary>
            <typeparam name="TEntity">Represents the object type for rows contained in <paramref name="table"/>.</typeparam>
            <param name="table">Represents a table for a particular type in the underlying database containing rows are to be deleted.</param>
            <param name="entities">Represents the collection of items which are to be removed from <paramref name="table"/>.</param>
            <param name="timeout">Timeout in seconds</param>
            <returns>The number of rows deleted from the database.</returns>
            <remarks>
            <para>Similiar to stored procedures, and opposite from DeleteAllOnSubmit, rows provided in <paramref name="entities"/> will be deleted immediately with no need to call <see cref="M:System.Data.Linq.DataContext.SubmitChanges"/>.</para>
            <para>Additionally, to improve performance, instead of creating a delete command for each item in <paramref name="entities"/>, a single delete command is created.</para>
            </remarks>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.DeleteBatch``1(System.Data.Linq.Table{``0})">
            <summary>
            Deletes all items from a table. (default timeout = 90 seconds)
            </summary>
            <typeparam name="TEntity">Type to delete all items from</typeparam>
            <param name="table">the table to empty</param>
            <returns>number of rows deleted</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.DeleteBatch``1(System.Data.Linq.Table{``0},System.Int32)">
            <summary>
            Deletes all items from a table
            </summary>
            <typeparam name="TEntity">Type to delete all items from</typeparam>
            <param name="table">the table to empty</param>
            <param name="timeout">timeout in seconds</param>
            <returns>number of rows deleted</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.DeleteBatchPreview``1(System.Data.Linq.Table{``0},System.Linq.IQueryable{``0})">
            <summary>
            Returns a string representation the LINQ <see cref="!:IProvider"/> command text and parameters used that would be issued to delete all entities from the collection with a single delete command.
            </summary>
            <typeparam name="TEntity">Represents the object type for rows contained in <paramref name="table"/>.</typeparam>
            <param name="table">Represents a table for a particular type in the underlying database containing rows are to be deleted.</param>
            <param name="entities">Represents the collection of items which are to be removed from <paramref name="table"/>.</param>
            <returns>Returns a string representation the LINQ <see cref="!:IProvider"/> command text and parameters used that would be issued to delete all entities from the collection with a single delete command.</returns>
            <remarks>This method is useful for debugging purposes or when used in other utilities such as LINQPad.</remarks>
        </member>
        <member name="M:GoodStuff.Data.Linq.HeavyOperationExtensions.PreviewCommandText(System.Data.Common.DbCommand,System.Boolean)">
            <summary>
            Returns a string representation of the <see cref="P:System.Data.Common.DbCommand.CommandText"/> along with <see cref="P:System.Data.Common.DbCommand.Parameters"/> if present.
            </summary>
            <param name="cmd">The <see cref="T:System.Data.Common.DbCommand"/> to analyze.</param>
            <param name="forTransactSQL">Whether or not the text should be formatted as 'logging' similiar to LINQ to SQL output, or in valid Transact SQL syntax ready for use with a 'query analyzer' type tool.</param>
            <returns>Returns a string representation of the <see cref="P:System.Data.Common.DbCommand.CommandText"/> along with <see cref="P:System.Data.Common.DbCommand.Parameters"/> if present.</returns>
            <remarks>This method is useful for debugging purposes or when used in other utilities such as LINQPad.</remarks>
        </member>
        <member name="M:GoodStuff.Data.Linq.KeyFromExpression.FromCache``1(System.Linq.IQueryable{``0})">
            <summary>
            
            </summary>
            <typeparam name="T"></typeparam>
            <param name="query"></param>
            <returns></returns>
            <remarks>http://petemontgomery.wordpress.com/2008/08/07/caching-the-results-of-linq-queries/</remarks>
        </member>
        <member name="M:GoodStuff.Data.Linq.KeyFromExpression.GetCacheKey``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
            <summary>
            
            </summary>
            <typeparam name="TEntity"></typeparam>
            <param name="expression"></param>
            <returns></returns>
            <remarks>http://pastebin.com/DhHi0Cs2</remarks>
        </member>
        <member name="T:GoodStuff.Web.SiteUnderConstructionConfigurationSectionHandler">
            <summary>
            Helper class to retrieve the SiteUnderConstructionConfiguration
            </summary>
        </member>
        <member name="T:GoodStuff.Web.SiteUnderConstructionConfiguration">
            <summary>
            Helper class which represents the structure of the SiteUnderConstructionConfiguration-configurationsection.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.SiteUnderConstructionConfiguration.IgnoreIPs">
            <summary>
            Semicolon or comma separated list of IP-addresses (CIDR-notation) of IP's that will be excluded for redirection to the underconstruction page
            </summary>
        </member>
        <member name="P:GoodStuff.Web.SiteUnderConstructionConfiguration.UnderConstructionPageURL">
            <summary>
            Relative (~/pagename.html) or aboslute (http://www.underconstruction.com) URL to the under construction page.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.SessionTimeoutModule">
            <summary>
            When this module is registered in the web.config, it will automatically redirect the client
            to the login page when the session has timed out.
            </summary>
            <remarks>
            It requires no configuration, but FormsAuthentication must be used to detect the login page.
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.PageTools.TieButton(System.Web.UI.Page,System.Web.UI.Control,System.Web.UI.Control)">
            <summary>
            Binds the given Textbox to a button. When the enterkey is pressed (when focus is on that textbox) the button clicked.
            </summary>
            <param name="page">The Page-object</param>
            <param name="TextBoxToTie"></param>
            <param name="ButtonToTie"></param>
        </member>
        <member name="T:GoodStuff.Web.Controls.DateSelector">
            <summary>
            Allows the user to select a date using 3 dropdowns for day, month and year.
            </summary>
        </member>
        <member name="E:GoodStuff.Web.Controls.DateSelector.SelectionChanged">
            <summary>
            Raises an event when the selection has changed.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.DateSelector.SelectedDate">
            <summary>
            Get or set the selected date.
            </summary>
            <remarks>
            If the user selected an invalid date, it gets converted to the first previous date (for example, april 31 becomes april 30.
            </remarks>
        </member>
        <member name="T:GoodStuff.Web.Controls.DecoratorControl">
            <summary>
            DecoratorControl surrounds the contents of a control with the contents of a Template control.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.DecoratorControl.Template">
            <summary>
            The name of the .ascx file to load as a template.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.MultiRequiredFieldValidator.ControlsToValidate">
            <summary>
            Comma separated list of control IDs that you want to check
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.MultiRequiredFieldValidator.Condition">
            <summary>
            The condition used to compare the value of the fields, 
            e.g. 'OR', will return true if at least one field is valid
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Controls.MultiRequiredFieldValidator.Conditions.OR">
            <summary>
            OR condition
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Controls.MultiRequiredFieldValidator.Conditions.XOR">
            <summary>
            XOR Condition
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Controls.MultiRequiredFieldValidator.Conditions.AND">
            <summary>
            AND Condition
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CaptchaImage">
            <summary>
            This user control represents an image that only a real human should be
            able to decode. It works in conjunction with the CaptchaImageHandler
            and the CaptchaValidator controls. This control does nothing more than
            generate the ticket for validation, and delegate the creation of an image
            to the handler.
            </summary>
            <remarks>
            The ticket with the correct answer is to be encrypted in the viewstate.
            
            Implementation of this class is inspired by an MSDN article at
            http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/hip_aspnet.asp?frame=true
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.CaptchaImage.Authenticate(System.String)">
            <summary>
            Check if the given token correspondents to the token of this image.
            </summary>
            <param name="password"></param>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.Web.Controls.CaptchaImage.CaptchaImageHandler">
            <summary>
            The name of the URL that will generate the image. By default, this
            property contains 'CaptchaImageHandler.axd', but implementors may
            decide to override this.
            </summary>
        </member>
        <member name="M:GoodStuff.Text.TextExtensions.ToAge(System.DateTime)">
            <summary>
            This will convert a timespan into an indication of the age.
            It is usually not interesting exactly to know the exact second something happened,
            just that it happend '3 days ago'.
            </summary>
            <param name="age"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.TextExtensions.ToAge(System.TimeSpan)">
            <summary>
            This will convert a timespan into an indication of the age.
            It is usually not interesting exactly to know the exact second something happened,
            just that it happend '3 days ago'.
            </summary>
            <param name="diff"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.TextExtensions.EnsureEndWith(System.String,System.String)">
            <summary>
            Ensures the given string ends with the given argument
            </summary>
            <param name="text"></param>
            <param name="endsWith"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.TextExtensions.EnsureEndWithSlash(System.String)">
            <summary>
            Ensures the given string ends with a forward slash (commonly used within filepaths)
            </summary>
            <param name="text"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.TextExtensions.Limit(System.String,System.Int32)">
            <summary>
            Makes sure that a string is never more than 'maxLength' characters, by appending '...' at the end.
            </summary>
            <param name="text"></param>
            <param name="maxLength"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Providers.SmtpMessagingProvider">
            <summary>
            To configure the messagingprovider, Configure the SmtpServer settings in web.config.
            </summary>
            <remarks>
            Requires the smtpMessaging configuration settings in the web.config
            </remarks>
        </member>
        <member name="T:GoodStuff.Providers.MessagingProviderBase">
            <summary>
            Base class for sending mails and notifications.
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.MessagingProviderBase.CreateMessage">
            <summary>
            Generate a new instance of a message.
            </summary>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Providers.MessagingProviderBase.SendMessage(GoodStuff.Providers.Message)">
            <summary>
            Send the message.
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:GoodStuff.Providers.SmtpMessagingProvider.SendMessage(GoodStuff.Providers.Message)">
            <summary>
            Sends a message using a configured formatting template.
            </summary>
            <example>
            To send a Html Message with embedded images, just use 'img src=filename.jpg' in your template and put the JPG images
            in the same folder as the html-template. This of course only works when AsHtml = true
            </example>
            <param name="message"></param>
        </member>
        <member name="T:GoodStuff.Web.Controls.UpdatePanelProgressTemplate">
            <summary>
            UpdatePanelProgressTemplate can be used inside a asp:UpdateProgress to disable interaction (lockdown) with the page while
            a partial postback is active. It also shows a popup (loader) with information to indicate that a partial postback is active.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.#ctor">
            <summary>
            Creates a UpdatePanelProgressTemplate with default settings
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.CssClassLockdown">
            <summary>
            The CssClass of the 'lockdown'-layer. If not set some default styles will be applied.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.CssClassLoader">
            <summary>
            The CssClass of the 'loading'-popup. If not set some default styles will be applied.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.LoaderHeight">
            <summary>
            The height of the 'loadingpopup'. Default = 50
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.LoaderWidth">
            <summary>
            The width of the 'loadingpopup'. Default = 200
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.Text">
            <summary>
            The text to display while page partial loads
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.ImageUrl">
            <summary>
            The relative url to the loaderimage
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.UpdatePanelProgressTemplate.ImageAlign">
            <summary>
            The alignment of the Image
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.Password">
            <summary>
            A custom password style textbox that remembers its value on postback.
            </summary>
            <remarks>
            To allow very secure use of initial passwords, set the 'InitialText' value instead of the 'Text' value.
            </remarks>
        </member>
        <member name="P:GoodStuff.Web.Controls.Password.InitialText">
            <summary>
            Set the initial text so show a hidden, but known password. If validation fails, set it to NULL to allow manual entry.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.Pager">
            <summary>
            Summary description for Pager.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.Pager.PagesToDisplay">
            <summary>
            The number of pages to show, e.g. 1 2 3 4 5
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.Pager.MaximumPages">
            <summary>
            The maximum number of pages to display
            </summary>
        </member>
        <member name="T:GoodStuff.Validation.Validator">
            <summary>
            Facade pattern and Extension methods
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessageAttachment">
            <summary>
            Attachmentclass for messages
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.MessageAttachment.MimeType">
            <summary>
            the mimetype name of the attached content(type)
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessageAttachmentFromFile">
            <summary>
            Attachment that is based on a file on disk
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.MessageAttachmentFromFile.#ctor(System.String)">
            <summary>
            Creates a new attachment that will be read from disk.
            </summary>
            <param name="fileName">the name/path of the file to attach</param>
        </member>
        <member name="M:GoodStuff.Providers.MessageAttachmentFromFile.#ctor(System.String,System.String)">
            <summary>
            Creates a new attachment that will be read from disk. The displayname overrides the original filename.
            </summary>
            <param name="fileName">the name/path of the file to attach</param>
            /// <param name="mimeType">the mimetype name of the attached content(type)</param>
        </member>
        <member name="P:GoodStuff.Providers.MessageAttachmentFromFile.Filename">
            <summary>
            The name/path of the file to attach
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessageAttachmentFromStream">
            <summary>
            Attachment that will be created from a stream
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.MessageAttachmentFromStream.#ctor(System.IO.Stream,System.String,System.String)">
            <summary>
            Creates a new attachment from a stream
            </summary>
            <param name="stream"></param>
            <param name="name">name of the attachment (example: myExport.xml )</param>
            <param name="mimeType">mimetype of the content (example: text/xml )</param>
        </member>
        <member name="P:GoodStuff.Providers.MessageAttachmentFromStream.ContentStream">
            <summary>
            The stream to read
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.MessageAttachmentFromStream.Name">
            <summary>
            Displayname of the file
            </summary>
        </member>
        <member name="T:GoodStuff.Web.SiteUnderConstructionModule">
            <summary>
            When this HttpModule is registered, all visitors will be redirected to the configured 'under construction page'. 
            Through configuration you can set IP-addresses that will be excluded and thus won't be redirected (so they still or yet can use the application).
            </summary>
            <remarks>
            'SiteUnderConstructionAllowIPs' contains a comma-separated list of IP addresses that are allowed to browse the website. You can use
            129.0.0.0/24 notation to include subnetmasks (CIDR notation).
            If the client is not allowed to view a page, 'SiteUnderConstructionRedirect' contains an URL that the client is redirected to.
            WARNING: If SiteUnderConstructionRedirect is also an ASPX page, an endless loop may occur. We suggest using a non-.net mapped
            page, such as .htm.
            When your application is NOT under construction, unregister (comment) the module to prevent unnecessary overhead.
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.SiteUnderConstructionModule.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.StyledLinkButton">
            <summary>
            This linkbutton creates an addition 'span' tag for the contents of the link button, so that is can be easily styled.
            This is required, because &lt;asp:LinkButton Text="&lt;span&gt;Text&lt;/span&gt;"/&gt; does not work.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.RangedCalendar">
            <summary>
            A custom rebuilt version of the framework's Calendar control. It was designed
            to work with stylesheets (instead of inline styles) and it has the ability to
            show week numbers, and to block dates that are out of a certain range.
            </summary>
            <remarks>
            This version probably contains bugs.
            </remarks>
        </member>
        <member name="F:GoodStuff.Web.Controls.RangedCalendar.baseDate">
            <summary>
            Contains a certain reference point in time on which postback events
            are based.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RangedCalendar.MinimumDate">
            <summary>
            First lowest selectable date. 
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RangedCalendar.MaximumDate">
            <summary>
            The highest selectable date (inclusive).
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RangedCalendar.SelectedDate">
            <summary>
            The currently selected date.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RangedCalendar.TodaysDate">
            <summary>
            The current date.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RangedCalendar.VisibleDate">
            <summary>
            The current date.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.SecureTextBox">
            <summary>
            A custom password style textbox that remembers its value on postback.
            </summary>
        </member>
        <member name="T:GoodStuff.ICanResolveDependencies">
            <summary>
            Defines the interface for resolving implementations
            </summary>
        </member>
        <member name="M:GoodStuff.ICanResolveDependencies.Resolve``1">
            <summary>
            Resolves the instance of a specific interface
            </summary>
            <typeparam name="TService">The type of the service requested</typeparam>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.ICanResolveDependencies.Resolve``2(``1)">
            <summary>
            Resolves the instance of a specific interface with parameters
            </summary>
            <typeparam name="TService">The type of the service requested</typeparam>
            <typeparam name="TArg1"></typeparam>
            <typeparam name="TArg2"></typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.ICanResolveDependencies.Resolve``3(``1,``2)">
            <summary>
            Resolves the instance of a specific interface with parameters
            </summary>
            <typeparam name="TService">The type of the service requested</typeparam>
            <typeparam name="TArg1"></typeparam>
            <typeparam name="TArg2"></typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Providers.SmtpMessagingConfigurationSection">
            <summary>
            Contains definition for mail, like email template parameters. 
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessagingConfigurationSection.ForceRecipient">
            <summary>
            Forces all emails to be sent to this address instead of the configured TO parameter for the specific template.
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.ConfigurationElementCollection`1.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            The ConfigurationElement class requires this.
            </summary>
            <param name="element"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Text.CSVStringSplitter">
            <summary>
            Utility class to splits comma separated strings into multiple columns. Used by the CSVStreamReader
            </summary>
        </member>
        <member name="M:GoodStuff.Text.CSVStringSplitter.#ctor(System.String)">
            <summary>
            Constructs a new stringsplitter with a specified sepator
            </summary>
            <param name="separator">The separator to use.</param>
        </member>
        <member name="M:GoodStuff.Text.CSVStringSplitter.Split(System.String)">
            <summary>
            Splits an input string into multiple columns. 
            </summary>
            <param name="input"></param>
            <returns>an array of string values.</returns>
            <remarks>any strings containing the separator should be properly escaped by quotes.
            Any inside quote should be escaped by double quotes.</remarks>
        </member>
        <member name="P:GoodStuff.Text.CSVStringSplitter.Separator">
            <summary>
            Returns the separator for the current splitter.
            </summary>
        </member>
        <member name="T:GoodStuff.CollectionExtensions">
            <summary>
            Extensions for Lists
            </summary>
        </member>
        <member name="M:GoodStuff.CollectionExtensions.Shuffle(System.Collections.IList)">
            <summary>
            Shuffles the items within the collection.
            </summary>
            <param name="source"></param>
        </member>
        <member name="T:GoodStuff.Web.Controls.StateBagExtensions">
            <summary>
            Extensions for controls that inherit from System.Web.UI.Control (all ASP.Net server controls)
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.StateBagExtensions.SaveValue``1(System.Web.UI.StateBag,System.String,``0)">
            <summary>
            Saves the value to the viewstate bases on the given key.
            </summary>
            <param name="viewState"></param>
            <param name="key"></param>
            <param name="value"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.StateBagExtensions.GetValue``1(System.Web.UI.StateBag,System.String)">
            <summary>
            Retrieves the value of the given key from the viewstate.
            </summary>
            <param name="viewState"></param>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.StateBagExtensions.GetValue``1(System.Web.UI.StateBag,System.String,``0)">
            <summary>
            Retrieves the value of the given key from the viewstate, with a parameterised default value
            </summary>
            <param name="viewState"></param>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.SumField">
            <summary>
            A custom column that act as 'totalizer'footercolumn within a GridView. It can show the sum, average or count of a column.
            </summary>
            <see cref="!:http://www.codeproject.com/KB/aspnet/SumColumn.aspx"/>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumField.#ctor">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumField.InitializeCell(System.Web.UI.WebControls.DataControlFieldCell,System.Web.UI.WebControls.DataControlCellType,System.Web.UI.WebControls.DataControlRowState,System.Int32)">
            <summary>
            Override the InitializeCell of the base BoundField
            </summary>
            <param name="cell"></param>
            <param name="cellType"></param>
            <param name="rowState"></param>
            <param name="rowIndex"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumField.CellItemDataBound(System.Object,System.EventArgs)">
            <summary>
            Eventhandler for each cell that is bounded.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumField.GetUnderlyingValue(System.Object)">
            <summary>
            GetUnderlyingValue
            </summary>
            <param name="dataItem"></param>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.ShowSum">
            <summary>
            Show the sum of a column (default = true)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.ShowCount">
            <summary>
            Show to count of a column (default = false)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.ShowAverage">
            <summary>
            Show to average of a column (default = false)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.LabelSum">
            <summary>
            The prefix for the sum value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.LabelAverage">
            <summary>
            The prefix for the average value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.LabelCount">
            <summary>
            The prefix for the count value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.CssClass">
            <summary>
            The CSS class to apply to this specific column. Will be applied to the cell.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumField.Encode">
            <summary>
            Encode labels and values? (default = false)
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.AutoValidator">
            <summary>
            Autovalidator generates validators based on the code-behind validation rules for the given control.
            </summary>
        </member>
        <member name="T:GoodStuff.Net.AuthenticatingProxy">
            <summary>
            http://stackoverflow.com/questions/186800/is-it-possible-to-specify-proxy-credentials-in-your-web-config
            </summary>
        </member>
        <member name="T:GoodStuff.Web.SecureCookieHelper">
            <summary>
            Helper class to read and write encrypted cookies using the machine key.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.WrappingCheckBoxList">
            <summary>
            This CheckBoxList list fixes the line wrapping problem with long option texts. It
            also provides a way to databind the initial selection.
            </summary>
            <remarks>
            For information about how to bind the initial values, see the <see cref="P:GoodStuff.Web.Controls.WrappingCheckBoxList.SelectedValues"/> property.
            </remarks>
        </member>
        <member name="P:GoodStuff.Web.Controls.WrappingCheckBoxList.SelectedValues">
            <summary>
            Contains the datasource for the selected values 
            </summary>
            <remarks>
            The list of selected values should be a subset of the datasource, but the container type
            may vary. To define which property of the argument defines the selection value, specify the
            <see cref="P:GoodStuff.Web.Controls.WrappingCheckBoxList.SelectedValuesDataMember"/>.
            </remarks>
        </member>
        <member name="P:GoodStuff.Web.Controls.WrappingCheckBoxList.SelectedValuesDataMember">
            <summary>
            In case the SelectedValues property is a collection of objects,
            this member indicate the value of the item, the same way that the
            DataValueField works.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.Validation.ValidationFramework.FindControlsRecursive``1(System.Web.UI.Control)">
            <summary>
            returns all controls of a particular base class
            </summary>
            <typeparam name="T"></typeparam>
            <param name="startingControl"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.ThumbnailHandler">
            <summary>
            ThumbnailHandler will return a cached
            thumbnail for the filename that was given
            by querystring. 
            </summary>
            <remarks>
            Caching is not yet implemented, but the overload of GetImageForRequest may do so.
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.ThumbnailHandler.GetImageForRequest(System.Web.HttpContext)">
            <summary>
            You may override this method to implement your own way 
            to decide how to get to the file extension or mimetype.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ListControlExtensions">
            <summary>
            Extenstion which can be used on a System.Web.UI.WebControls.DropDownList
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.InsertDefault(System.Web.UI.WebControls.ListControl)">
            <summary>
            Insert a Listitem (Text = "-- Maak een keuze --", Value = "") as first item.
            </summary>
            <param name="control"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.InsertDefault(System.Web.UI.WebControls.ListControl,System.String)">
            <summary>
            Insert a Listitem with Value="" and the given (display)Text as first item.
            </summary>
            <param name="control"></param>
            <param name="displayText">Text to display</param>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.InsertDefault(System.Web.UI.WebControls.ListControl,System.String,System.String)">
            <summary>
            Insert a Listitem with the given text and value as first item.
            </summary>
            <param name="control"></param>
            <param name="displayText">Text to display</param>
            <param name="value">The value of the listitem that will be created</param>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsGuid(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a Guid. Throws on invalid Guid
            </summary>
            <param name="control"></param>
            <returns>assigned GUID</returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsGuidNullable(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a Nullable Guid. Throws on invalid Guid
            </summary>
            <param name="control"></param>
            <returns>Nullable Guid</returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsInteger(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a Int32. Throws on not numeric text
            </summary>
            <param name="control"></param>
            <returns>assigned Int32</returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsIntegerNullable(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a nullable Int32. Throws on not numeric text
            </summary>
            <param name="control"></param>
            <returns>Nullable Int32</returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsLong(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a Int64 (long). Throws on not numeric text
            </summary>
            <param name="control"></param>
            <returns>assigned Int64</returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.ListControlExtensions.SelectedValueAsLongNullable(System.Web.UI.WebControls.ListControl)">
            <summary>
            Converts the SelectedValue to a nullable Int64. Throws on not numeric text
            </summary>
            <param name="control"></param>
            <returns>Nullable Int64</returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.CheckBoxListRequiredFieldValidator">
            <summary>
            Requires that at least on element of the checkboxlist is selected. Supports clientside validation.
            </summary>
        </member>
        <member name="T:GoodStuff.Container">
            <summary>
            Implementation of a very simple DI container that supports instance reuse.
            </summary>
        </member>
        <member name="M:GoodStuff.Container.Register``1(System.Func{GoodStuff.Container,``0})">
            <summary>
            Registers a constructor for a service type with the container
            </summary>
            <typeparam name="TService"></typeparam>
            <param name="constructor"></param>
        </member>
        <member name="M:GoodStuff.Container.Register``1(GoodStuff.InstanceMode,System.Func{GoodStuff.Container,``0})">
            <summary>
            Registers a constructor for a service type with the container
            </summary>
            <typeparam name="TService"></typeparam>
            <param name="mode"></param>
            <param name="constructor"></param>
        </member>
        <member name="M:GoodStuff.Container.Register``2(System.Func{GoodStuff.Container,``1,``0})">
            <summary>
            Registers a constructor for a service type with the container
            </summary>
            <typeparam name="TService"></typeparam>
            <typeparam name="TArg"></typeparam>
            <param name="constructor"></param>
        </member>
        <member name="M:GoodStuff.Container.Register``3(System.Func{GoodStuff.Container,``1,``2,``0})">
            <summary>
            Registers a constructor for a service type with the container
            </summary>
            <typeparam name="TService"></typeparam>
            <typeparam name="TArg1"></typeparam>
            <typeparam name="TArg2"></typeparam>
            <param name="constructor"></param>
        </member>
        <member name="M:GoodStuff.Container.Resolve``1">
            <summary>
            Returns the configured instance of a type
            </summary>
            <typeparam name="TService"></typeparam>
        </member>
        <member name="M:GoodStuff.Container.Resolve``2(``1)">
            <summary>
            Returns the configured instance of a type
            </summary>
            <typeparam name="TService"></typeparam>
            <typeparam name="TArg"></typeparam>
            <param name="arg"></param>
        </member>
        <member name="M:GoodStuff.Container.Resolve``3(``1,``2)">
            <summary>
            Returns the configured instance of a type
            </summary>
            <typeparam name="TService"></typeparam>
            <typeparam name="TArg1"></typeparam>
            <typeparam name="TArg2"></typeparam>
            <param name="arg1"></param>
            <param name="arg2"></param>
        </member>
        <member name="M:GoodStuff.Container.InjectFromConfiguration``1">
            <summary>
            Injection from container only supports parameterless constructors.
            </summary>
            <typeparam name="TInstance"></typeparam>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.InstanceMode">
            <summary>
            Construction can be new for every request or reuse within container scope.
            </summary>
        </member>
        <member name="F:GoodStuff.InstanceMode.CreateNew">
            <summary>
            Creates a new instance on every resolve.
            </summary>
        </member>
        <member name="F:GoodStuff.InstanceMode.Reuse">
            <summary>
            InstanceMode.Reuse will produce unpredictable results when used with constructor arguments.
            </summary>
        </member>
        <member name="T:GoodStuff.ResolutionException">
            <summary>
            Something went wrong where resolving a type.
            </summary>
        </member>
        <member name="M:GoodStuff.ResolutionException.#ctor">
            <summary>
            
            </summary>
        </member>
        <member name="M:GoodStuff.ResolutionException.#ctor(System.String)">
            <summary>
            
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:GoodStuff.ResolutionException.#ctor(System.String,System.Exception)">
            <summary>
            
            </summary>
            <param name="message"></param>
            <param name="inner"></param>
        </member>
        <member name="M:GoodStuff.ResolutionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="T:GoodStuff.Web.Cached">
            <summary>
            Threadsafe generic HttpCache wrapper. Simplified HttpRunTime cache access and supports easy caching patterns.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Cached.Get``1(System.String,System.String,System.TimeSpan,System.Func{``0})">
            <summary>
            
            </summary>
            <typeparam name="TData"></typeparam>
            <param name="cacheKey"></param>
            <param name="groupName"></param>
            <param name="slidingExpiration"></param>
            <param name="populateMethod"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Cached.Get``1(System.String,System.String,System.Web.Caching.CacheDependency,System.DateTime,System.TimeSpan,System.Web.Caching.CacheItemPriority,System.Func{``0})">
            <summary>
            Retrieve an object from the runtime cache. The populate method will fill the cache if is now yet created or expired.
            </summary>
            <typeparam name="TData"></typeparam>
            <param name="cacheKey"></param>
            <param name="slidingExpiration"></param>
            <param name="populateMethod"></param>
            <param name="absoluteExpiration"></param>
            <param name="groupName">The name of the cache group</param>
            <param name="dependency"></param>
            <param name="priority"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Cached.Remove(System.String)">
            <summary>
            Remove a key from the cache. 
            </summary>
            <param name="cacheKey"></param>
        </member>
        <member name="M:GoodStuff.Web.Cached.RemoveAll">
            <summary>
            Clear all cacheitems that were added by this cache.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Cached.RemoveGroup(System.String)">
            <summary>
            Removes an entire group from the cache.
            </summary>
            <param name="groupName"></param>
        </member>
        <member name="T:GoodStuff.Web.Cached.CacheGroup">
            <summary>
            Helper class to support cache groups
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Cached.CacheGroup.SubKeys">
            <summary>
            A list of all the keys that were registered with this group.
            </summary>
        </member>
        <member name="T:GoodStuff.EnumExtensions">
            <summary>
            Extensions for enumerators
            </summary>
        </member>
        <member name="M:GoodStuff.EnumExtensions.EnumToList``1">
            <summary>
            Creates a Generic List with all posible values of the enum specified
            </summary>
            <typeparam name="T">Type of enum</typeparam>
            <returns>a Generic List with all posible values of the enum specified</returns>
        </member>
        <member name="M:GoodStuff.EnumExtensions.Parse``1(System.String)">
            <summary>
            Parses a string to a strongly-typed enum value.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Enum`1">
            <summary>
            Enum helper class
            </summary>
            <remarks>
            Thanks to Christopher Bennage 
            http://devlicious.com/blogs/christopher_bennage/archive/2007/09/13/my-new-little-friend-enum-lt-t-gt.aspx
            </remarks>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:GoodStuff.Enum`1.GetValues">
            <summary>
            Returns all values of an anum
            </summary>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Enum`1.Parse(System.String)">
            <summary>
            Parses a string to a strongly-type enum value.
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Enum`1.Parse(System.String,System.Boolean)">
            <summary>
            Parses a string to a strongly-type enum value.
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Diagnostics.TraceHelper">
            <summary>
            Work in progress. Not stable!
            </summary>
        </member>
        <member name="M:GoodStuff.DateTimeExtensions.RoundTo(System.Int32,System.Int32)">
            <summary>
            Returns a number rounded to its closest interval, e.g. 17 RoundTo 4 becomes 16. 
            </summary>
            <param name="input"></param>
            <param name="interval"></param>
        </member>
        <member name="M:GoodStuff.DateTimeExtensions.NextWorkingDay(System.DateTime,System.Int32,System.Int32,GoodStuff.IWorkingdayProvider)">
            <summary>
            Assuming that we never work on a saturday or a sunday, compute the next number of working days.
            </summary>
            <param name="day">The day to start counting from, e.g. DateTime.Now</param>
            <param name="amount">The amount of dates to return</param>
            <param name="span">The number of working days to skip.</param>
            <param name="calendar">Supports custom implementations for obtaining holidays.</param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.TextBoxAutoGrow">
            <summary>
            Textbox that will auto grow based on its content.
            </summary>
            <remarks>The onkeyup event will be overriden so you can't use that by yourself.</remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextBoxAutoGrow.#ctor">
            <summary>
            Creates a new TextBoxAutoGrow with default settings.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextBoxAutoGrow.OnPreRender(System.EventArgs)">
            <summary>
            Scripts will be added on OnPreRender-stage
            </summary>
            <param name="e"></param>
        </member>
        <member name="P:GoodStuff.Web.Controls.TextBoxAutoGrow.RowsToGrow">
            <summary>
            The number of rows that the textbox must grow when the last row has been filled. Default = 4
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.TextBoxAutoGrow.MaxHeight">
            <summary>
            Optional: the maximum height (in pixels) that should be used. If the textbox has used all lines, and the new height would 
            exceed this MaxHeight, the MaxHeight will be applied. A scrollbar then takes over.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.TextBoxAutoGrow.LineHeight">
            <summary>
            The lineheight (in pixels) that is used, see applied CSS styles. Default = 13.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CommandCheckBox">
            <summary>
            A variant of the checkbox control that contains Commandname and Arguments
            </summary>
        </member>
        <member name="T:GoodStuff.Text.DiffEngine">
            <summary>
            This Class implements the Difference Algorithm published in
            "An O(ND) Difference Algorithm and its Variations" by Eugene Myers
            Algorithmica Vol. 1 No. 2, 1986, p 251.  
            </summary>
            <remarks>
            There are many C, Java, Lisp implementations public available but they all seem to come
            from the same source (diffutils) that is under the (unfree) GNU public License
            and cannot be reused as a sourcecode for a commercial application.
            There are very old C implementations that use other (worse) algorithms.
            Microsoft also published sourcecode of a diff-tool (windiff) that uses some tree data.
            Also, a direct transfer from a C source to C# is not easy because there is a lot of pointer
            arithmetic in the typical C solutions and i need a managed solution.
            These are the reasons why I implemented the original published algorithm from the scratch and
            make it avaliable without the GNU license limitations.
            I do not need a high performance diff tool because it is used only sometimes.
            I will do some performace tweaking when needed.
            
            The algorithm itself is comparing 2 arrays of numbers so when comparing 2 text documents
            each line is converted into a (hash) number. See DiffText(). 
            
            Some chages to the original algorithm:
            The original algorithm was described using a recursive approach and comparing zero indexed arrays.
            Extracting sub-arrays and rejoining them is very performance and memory intensive so the same
            (readonly) data arrays are passed arround together with their lower and upper bounds.
            This circumstance makes the LCS and SMS functions more complicate.
            I added some code to the LCS function to get a fast response on sub-arrays that are identical,
            completely deleted or inserted.
            
            The result from a comparisation is stored in 2 arrays that flag for modified (deleted or inserted)
            lines in the 2 data arrays. These bits are then analysed to produce a array of Item objects.
            
            Further possible optimizations:
            (first rule: don't do it; second: don't do it yet)
            The arrays DataA and DataB are passed as parameters, but are never changed after the creation
            so they can be members of the class to avoid the paramter overhead.
            In SMS is a lot of boundary arithmetic in the for-D and for-k loops that can be done by increment
            and decrement of local variables.
            The DownVector and UpVector arrays are alywas created and destroyed each time the SMS gets called.
            It is possible to reuse tehm when transfering them to members of the class.
            See TODO: hints.
            
            diff.cs: A port of the algorythm to C#
            Copyright (c) by Matthias Hertel, http://www.mathertel.de
            This work is licensed under a BSD style license. See http://www.mathertel.de/License.aspx
            
            Changes:
            2002.09.20 There was a "hang" in some situations.
            Now I undestand a little bit more of the SMS algorithm. 
            There have been overlapping boxes; that where analyzed partial differently.
            One return-point is enough.
            A assertion was added in CreateDiffs when in debug-mode, that counts the number of equal (no modified) lines in both arrays.
            They must be identical.
            
            2003.02.07 Out of bounds error in the Up/Down vector arrays in some situations.
            The two vetors are now accessed using different offsets that are adjusted using the start k-Line. 
            A test case is added. 
            
            2006.03.05 Some documentation and a direct Diff entry point.
            
            2006.03.08 Refactored the API to static methods on the Diff class to make usage simpler.
            2006.03.10 using the standard Debug class for self-test now.
                       compile with: csc /target:exe /out:diffTest.exe /d:DEBUG /d:TRACE /d:SELFTEST Diff.cs
            2007.01.06 license agreement changed to a BSD style license.
            2007.06.03 added the Optimize method.
            2007.09.23 UpVector and DownVector optimization by Jan Stoklasa ().
            2008.05.31 Adjusted the testing code that failed because of the Optimize method (not a bug in the diff algorithm).
            2008.10.08 Fixing a test case and adding a new test case.
            </remarks>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.DiffText(System.String,System.String)">
            <summary>
            Find the difference in 2 texts, comparing by textlines.
            </summary>
            <param name="TextA">A-version of the text (usualy the old one)</param>
            <param name="TextB">B-version of the text (usualy the new one)</param>
            <returns>Returns a array of Items that describe the differences.</returns>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.DiffText(System.String,System.String,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Find the difference in 2 text documents, comparing by textlines.
            The algorithm itself is comparing 2 arrays of numbers so when comparing 2 text documents
            each line is converted into a (hash) number. This hash-value is computed by storing all
            textlines into a common hashtable so i can find dublicates in there, and generating a 
            new number each time a new textline is inserted.
            </summary>
            <param name="TextA">A-version of the text (usualy the old one)</param>
            <param name="TextB">B-version of the text (usualy the new one)</param>
            <param name="trimSpace">When set to true, all leading and trailing whitespace characters are stripped out before the comparation is done.</param>
            <param name="ignoreSpace">When set to true, all whitespace characters are converted to a single space character before the comparation is done.</param>
            <param name="ignoreCase">When set to true, all characters are converted to their lowercase equivivalence before the comparation is done.</param>
            <returns>Returns a array of Items that describe the differences.</returns>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.Optimize``1(GoodStuff.Text.DiffData{``0})">
            <summary>
            If a sequence of modified lines starts with a line that contains the same content
            as the line that appends the changes, the difference sequence is modified so that the
            appended line and not the starting line is marked as modified.
            This leads to more readable diff sequences when comparing text files.
            </summary>
            <param name="Data">A Diff data buffer containing the identified changes.</param>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.Diff``1(``0[],``0[])">
            <summary>
            Find the difference in 2 arrays of integers.
            </summary>
            <param name="ArrayA">A-version of the numbers (usualy the old one)</param>
            <param name="ArrayB">B-version of the numbers (usualy the new one)</param>
            <returns>Returns a array of Items that describe the differences.</returns>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.DiffCodes(System.String,System.Collections.Hashtable,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            This function converts all textlines of the text into unique numbers for every unique textline
            so further work can work only with simple numbers.
            </summary>
            <param name="aText">the input text</param>
            <param name="h">This extern initialized hashtable is used for storing all ever used textlines.</param>
            <param name="trimSpace">ignore leading and trailing space characters</param>
            <param name="ignoreCase"></param>
            <param name="ignoreSpace"></param>
            <returns>a array of integers.</returns>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.SMS``1(GoodStuff.Text.DiffData{``0},System.Int32,System.Int32,GoodStuff.Text.DiffData{``0},System.Int32,System.Int32,System.Int32[],System.Int32[])">
            <summary>
            This is the algorithm to find the Shortest Middle Snake (SMS).
            </summary>
            <param name="DataA">sequence A</param>
            <param name="LowerA">lower bound of the actual range in DataA</param>
            <param name="UpperA">upper bound of the actual range in DataA (exclusive)</param>
            <param name="DataB">sequence B</param>
            <param name="LowerB">lower bound of the actual range in DataB</param>
            <param name="UpperB">upper bound of the actual range in DataB (exclusive)</param>
            <param name="DownVector">a vector for the (0,0) to (x,y) search. Passed as a parameter for speed reasons.</param>
            <param name="UpVector">a vector for the (u,v) to (N,M) search. Passed as a parameter for speed reasons.</param>
            <returns>a MiddleSnakeData record containing x,y and u,v</returns>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.LCS``1(GoodStuff.Text.DiffData{``0},System.Int32,System.Int32,GoodStuff.Text.DiffData{``0},System.Int32,System.Int32,System.Int32[],System.Int32[])">
            <summary>
            This is the divide-and-conquer implementation of the longes common-subsequence (LCS) 
            algorithm.
            The published algorithm passes recursively parts of the A and B sequences.
            To avoid copying these arrays the lower and upper bounds are passed while the sequences stay constant.
            </summary>
            <param name="DataA">sequence A</param>
            <param name="LowerA">lower bound of the actual range in DataA</param>
            <param name="UpperA">upper bound of the actual range in DataA (exclusive)</param>
            <param name="DataB">sequence B</param>
            <param name="LowerB">lower bound of the actual range in DataB</param>
            <param name="UpperB">upper bound of the actual range in DataB (exclusive)</param>
            <param name="DownVector">a vector for the (0,0) to (x,y) search. Passed as a parameter for speed reasons.</param>
            <param name="UpVector">a vector for the (u,v) to (N,M) search. Passed as a parameter for speed reasons.</param>
        </member>
        <member name="M:GoodStuff.Text.DiffEngine.CreateDiffs``1(GoodStuff.Text.DiffData{``0},GoodStuff.Text.DiffData{``0})">
            <summary>Scan the tables of which lines are inserted and deleted,
            producing an edit script in forward order.  
            </summary>
            dynamic array
        </member>
        <member name="T:GoodStuff.Text.DiffEngine.Item">
            <summary>details of one difference.</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffEngine.Item.StartA">
            <summary>Start Line number in Data A.</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffEngine.Item.StartB">
            <summary>Start Line number in Data B.</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffEngine.Item.deletedA">
            <summary>Number of changes in Data A.</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffEngine.Item.insertedB">
            <summary>Number of changes in Data B.</summary>
        </member>
        <member name="T:GoodStuff.Text.DiffEngine.SMSRD">
            <summary>
            Shortest Middle Snake Return Data
            </summary>
        </member>
        <member name="T:GoodStuff.Text.DiffData`1">
            <summary>Data on one input file being compared.  
            </summary>
        </member>
        <member name="F:GoodStuff.Text.DiffData`1.Length">
            <summary>Number of elements (lines).</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffData`1.data">
            <summary>Buffer of numbers that will be compared.</summary>
        </member>
        <member name="F:GoodStuff.Text.DiffData`1.modified">
            <summary>
            Array of booleans that flag for modified data.
            This is the result of the diff.
            This means deletedA in the first Data or inserted in the second Data.
            </summary>
        </member>
        <member name="M:GoodStuff.Text.DiffData`1.#ctor(`0[])">
            <summary>
            Initialize the Diff-Data buffer.
            </summary>
            <param name="data">reference to the buffer</param>
        </member>
        <member name="T:GoodStuff.Security.SecurePassword">
            <summary>
            Allows you to store and check passwords in a secure way using a one-way encryption with hash and salt.
            </summary>
        </member>
        <member name="M:GoodStuff.Security.SecurePassword.#ctor(System.String,System.Int32)">
            <summary>
            Re-creates a password structure from a previous saved password.
            </summary>
            <param name="saltedHash"></param>
            <param name="salt"></param>
        </member>
        <member name="M:GoodStuff.Security.SecurePassword.#ctor(System.String)">
            <summary>
            Create a new password for storage. After construction, use the SaltedHash and Salt 
            properties to store the password details.
            </summary>
            <param name="password"></param>
        </member>
        <member name="M:GoodStuff.Security.SecurePassword.IsStrong(System.String)">
            <summary>
            Test if the given password is strong. 
            </summary>
            <param name="password"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Security.SecurePassword.IsStrong(System.String,System.Int32)">
            <summary>
            Tests if the given password is strong and is at least <c>minimumLenght</c> characters long.
            </summary>
            <remarks>
            In this class, a strong password is not null, at least n character, contains lowercase and uppercase characters
            and contains at least one non-alphabetic character.
            </remarks>
            <param name="password"></param>
            <param name="minimumlength"></param>
            <returns></returns>
        </member>
        <!-- Badly formed XML comment ignored for member "M:GoodStuff.Security.SecurePassword.Validate(System.String)" -->
        <member name="M:GoodStuff.Security.SecurePassword.CreateRandomPassword(System.Int32)">
            <summary>
            Creates a random password.
            </summary>
            <param name="PasswordLength"></param>
            <remarks>
            The generated password is random, but may not be strong enough to pass <see cref="M:GoodStuff.Security.SecurePassword.IsStrong(System.String)"/>
            </remarks>
            <returns>A random password of at least <see cref="!:PasswordLength"/> characters.</returns>
        </member>
        <member name="P:GoodStuff.Security.SecurePassword.Salt">
            <summary>
            Returns the Salt for the current password for storage in a database.
            </summary>
        </member>
        <member name="P:GoodStuff.Security.SecurePassword.SaltedHash">
            <summary>
            Returns the salted hash for the current password for storage in a database.
            </summary>
        </member>
        <member name="T:GoodStuff.Validation.Rules.ValidatorRuleBase`1">
            <summary>
            Base class to support the validation of a single property value.
            </summary>
        </member>
        <member name="M:GoodStuff.Validation.Rules.StringLengthRule.ValidateCore(System.String)">
            <summary>
            Validates any value to see if it is null or empty. The type is given.
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Text.Templating.FormatCollection(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
            <summary>
            Formats a string using a list of named parameters instead of the standard {0} notation.
            </summary>
            <param name="format"></param>
            <param name="parameters"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.IRedirectProvider.DetermineRedirect(System.String)">
            <summary>
            
            </summary>
            <param name="original"></param>
            <returns>the URL to redirect to, or NULL when not to redirect this request.</returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.WrappingRadioButtonList">
            <summary>
            This radiobutton list fixes the line wrapping problem with long option texts. 
            </summary>	
        </member>
        <member name="T:GoodStuff.Web.Controls.VersionLabel">
            <summary>
            Display the current version of the running assembly, when running in debug-build
            </summary>
            <remarks>
            This only works when the assembly version is in the format [assembly: AssemblyVersion("0.9.*")]
            The * indicates that the last two parts are automatically generated. This control depends on
            that automatic generated information. When using AssemblyFileVersion, the date is taken from the
            last write time of the DLL since FileVersion has no * construct.
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabel.#ctor">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabel.Render(System.Web.UI.HtmlTextWriter)">
            <summary>
            Renders the current version of the running assembly, when running in debug-build
            </summary>
            <param name="writer"></param>
        </member>
        <member name="P:GoodStuff.Web.Controls.VersionLabel.DebugBuildOnly">
            <summary>
            Get/Sets if this control should be rendered in debug builds only. Default is false
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.VersionLabel.VersionType">
            <summary>
            The type of version information the control has to render
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.VersionInformation">
            <summary>
            Type of version to use.
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Controls.VersionInformation.AssemblyVersion">
            <summary>
            Use the AssemblyVersion
            </summary>
        </member>
        <member name="F:GoodStuff.Web.Controls.VersionInformation.AssemblyFileVersion">
            <summary>
            Use the AssemblyFileVersion
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.VersionLabelText">
            <summary>
            Helper class which uses the VerionLabel class to return a displaytext for the given assembly
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabelText.GetDisplayText(System.Reflection.Assembly,GoodStuff.Web.Controls.VersionInformation)">
            <summary>
            Constructs a string with name and version information of the current running (main)assembly
            </summary>
            <param name="assembly"></param>
            <param name="versionType"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabelText.TryGetAssemblyTitle(System.Reflection.Assembly)">
            <summary>
            Tries to get the title based on the AssemblyTitleAttribute. If not available, it uses the name of the assembly
            </summary>
            <param name="assembly"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabelText.GetDisplayText(System.String,System.Int32,System.Int32,System.Int32,System.DateTime)">
            <summary>
            Formats the different information to a display text.
            </summary>
            <param name="name"></param>
            <param name="major"></param>
            <param name="minor"></param>
            <param name="build"></param>
            <param name="builded"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.VersionLabelText.CalculateDateTime(System.Int32,System.Int32)">
            <summary>
            Calculates the builddate (and time)
            </summary>
            <param name="build"></param>
            <param name="revision"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.OneClickButton">
            <summary>
            After this button has been clicked, it become disabled to prevent a user for clicking the button more then one during
            a single roundtrip/postback to the server. You can specify a "WaitText". If not set, the Text-value will be used as
            button text during postback.
            </summary>
            <remarks>Overrides the 'onclick' attribute.</remarks>
        </member>
        <member name="T:GoodStuff.Web.Controls.ContentUserControl">
            <summary>
            This control is a (failed) attempt to support templated user controls. Work in progress
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ContentUserControl.BasicTemplateContainer">
            <summary>
            Support container class for the ContentUserControl
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CaptchaValidator">
            <summary>
            Summary description for CaptchaValidator.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.CaptchaValidator.CaptchaImage">
            <summary>
            The name of the control that contains the challenge.
            </summary>
            <remarks>
            A special type converter is used to allow a selection in the designer.
            </remarks>
        </member>
        <member name="P:GoodStuff.Web.Controls.CaptchaValidator.AssociatedCaptchaImage">
            <summary>
            Private helper function to convert the name of the challenge control
            into the control on the current form.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.AutoSubmit">
            <summary>
            Performs a 'Postback' on the page after a given delay.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.AutoSubmit.DelayMilliseconds">
            <summary>
            The Amount of time to wait before a postback in milliseconds
            </summary>
            <value>
            Defaults to 500 msecs.
            </value>
        </member>
        <member name="T:GoodStuff.CBP">
            <summary>
            Namespace that contains assertion statement for Contract Based Programming
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessagingProviderSection">
            <summary>
            Contains configuration settings for the messaging provider.
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.MessagingProviderCollection">
            <summary>
            Collection of MessagingProvider instances.
            </summary>
        </member>
        <member name="T:GoodStuff.Security.MachineKeyCryptography">
            <summary>
            Provides access to encryption of cookie data using the machinekey
            </summary>
        </member>
        <member name="M:GoodStuff.Security.MachineKeyCryptography.Encode(System.String,System.Web.Security.CookieProtection)">
            <summary>
            Encodes a gives string using machinekey encryption.
            </summary>
            <param name="text"></param>
            <param name="cookieProtection"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Security.MachineKeyCryptography.Decode(System.String,System.Web.Security.CookieProtection)">
            <summary>
            Decodes an encrypted string using machinekey encryption.
            </summary>
            <param name="text"></param>
            <param name="cookieProtection"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.AttributeHelper.GetProperties``1(System.Object)">
            <summary>
            Returns all properties that have the given attribute applied.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="target"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.PathUtility.MakeAbsoluteUrl(System.String)">
            <summary>
            Returns a resolved url, e.g. ~/images/test.gif becomes http://localhost/approot/images/test.gif
            </summary>
            <param name="virtualPath"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.PathUtility.GetAbsoluteRoot">
            <summary>
            Returns the full url root of the current request, e.g. http://server:81/appdirectory/
            </summary>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.RelativeStylesheet">
            <summary>
            Summary description for RelativeStylesheet.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ObjectRepeater">
            <summary>
            A templated databound repeater that dynamically determines which
            template to use based on the class of the object in the collection.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.ObjectRepeater.CreateControlHierarchy(System.Boolean)">
            <summary>
            
            </summary>
            <param name="useDataSource">True to create the hierarchy from the DataSource, False to create it from the ViewState.</param>
        </member>
        <member name="M:GoodStuff.Web.Controls.ObjectRepeater.AddParsedSubObject(System.Object)">
            <summary>
            This member overrides Control.AddParsedSubObject.
            it catches the contents of each item.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ObjectRepeaterControlBuilder">
            <summary>
            Interacts with the parser to build a PanelBar control.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.ObjectRepeaterControlBuilder.GetChildControlType(System.String,System.Collections.IDictionary)">
            <summary>
            This member overrides ControlBuilder.GetChildControlType.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.GroupDropDownList">
            <summary>
            special dropdownlist with extended support for rendering option groups.
            </summary>
            <remarks>
            On the render stage, it detects ListItems with Enabled="false" and renders empty option groups instead.
            </remarks>
        </member>
        <member name="P:GoodStuff.Web.Controls.GroupDropDownList.DisableEmptyItems">
            <summary>
            Gets or sets a value wether or not to automatically disable items that have no value. Defaults to false.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.GroupDropDownList.EncodeItems">
            <summary>
            Gets or Sets a value wether to HtmlEncode the ListItems value
            Defaults to true, which is the normal behaviour for a dropdownlist.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ValidatableCalendar">
            <summary>
            Calender which can be validated by RequiredFieldValidator. Ensure no clientside validation takes place!
            </summary>
            <example>
                asp:RequiredFieldValidator EnableClientScript="false" ControlToValidate="calDate" runat="server" ErrorMessage="Please select a date" Display="None" />
            </example>
        </member>
        <member name="T:GoodStuff.Web.Controls.SearchBox">
            <summary>
            A standard quicksearch-box, enabled with a 'watermark' and a listener which is fired when the enter key is pressed.
            It fires the event : SearchTextSubmitted
            After entering a searchphrase the control will redirect you to the given searchpage.
            </summary>
            <remarks>
            Uses the AjaxControlToolkit (for .Net 3.5) and "System.Web.Extensions v3.5"
            </remarks>
        </member>
        <member name="M:GoodStuff.Web.Controls.SearchBox.searchButton_Click(System.Object,System.EventArgs)">
            <summary>
            Event fired when button has been clicked. When the event is handled, only the event is fired. 
            When you don't listen to this event, the user will be redirected to the configured searchpage.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.CssClassTextBox">
            <summary>
            Get/Set the CssClass of the Textbox
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.CssClassButton">
            <summary>
            Get/Set the CssClass of the Button
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.TextButton">
            <summary>
            Get/Set the text of the button
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.SearchPageUrl">
            <summary>
            application relative Url (start with "~/") of the search(result)page. After doing a search-request, the user will be redirected to this page.
            The searchtext will be appended to the querystring. The default page is ~/Pages/Search.aspx
            </summary>
            <example>~/Pages/Search.aspx</example>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.SearchPageQueryStringParameter">
            <summary>
            The name of the querystring parameter which will be used when redirecting to the search-page. Default "search"
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBox.SearchWithEmptyQuery">
            <summary>
            Get/Set if the user will be redirected to the searchpage when the entered query is emtpy. When not set search will NOT be
            performed without a searchquery.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SearchBoxEventArgs.SearchText">
            <summary>
            Text entered.
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.Message">
            <summary>
            A data container used for constructing messages (emails, sms, etc.).
            </summary>
            <remarks>
            The details of the handling of the message will be provided by the provider implementation.
            </remarks>
        </member>
        <member name="F:GoodStuff.Providers.Message._messageClass">
            <summary>
            holder for messageClass
            </summary>
        </member>
        <member name="F:GoodStuff.Providers.Message._attachments">
            <summary>
            holder for attachments
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.Message.MessageClass">
            <summary>
            The ID of the message. Backend systems may deal with this to merge layout or to start specific workflows.
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.Message.Attachments">
            <summary>
            List of attachments to attach to the message. Use childclasses of the MessageAttachment-type
            </summary>
        </member>
        <member name="T:GoodStuff.Data.Linq.HeavyOperationBulkCopyReader`1">
            <summary>
            LinqBulkCopyReader
            </summary>
            <example>http://blogs.microsoft.co.il/blogs/aviwortzel/archive/2008/05/06/implementing-sqlbulkcopy-in-linq-to-sql.aspx</example>
            <typeparam name="TEntity"></typeparam>
        </member>
        <member name="M:GoodStuff.Validation.Rules.IsRequiredRule.ValidateCore(System.String)">
            <summary>
            Validates any value to see if it is null or empty. The type is given.
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Security.FloodGate">
            <summary>
            FloodGate class will throw exceptions when a particular
            IP address posts too many operations in a given timeframe.
            
            Add a static member of this class to your business operations.
            </summary>
        </member>
        <member name="M:GoodStuff.Security.FloodGate.#ctor(System.TimeSpan,System.Int32,System.TimeSpan,System.Func{System.String,System.Exception})">
            <summary>        
            </summary>
            <param name="minimumDelayBetweenOperations">The amount of time that must have passed between operations by the same IP address.</param>
            <param name="maximumAttemps">Number of asserts that can be called within the timespan before throwing an error. E.g. 3 will throw on 3rd attempt.</param>
            <param name="onError">A delegate that generates an exception based on a client IP string.</param>
        </member>
        <member name="M:GoodStuff.Security.FloodGate.#ctor(System.String,System.TimeSpan)">
            <param name="operationName">The name of the operation used for logging purposes</param>
            <param name="minimumDelayBetweenOperations">The amount of time that must have passed between operations by the same IP address.</param>
        </member>
        <member name="T:GoodStuff.MsBuild.TransformConfigTask">
            <summary>
            Custom MSBuild task to transform a web.config or app.config by injecting required Xml fragments into a target file.
            </summary>
        </member>
        <member name="M:GoodStuff.MsBuild.TransformConfigTask.GetConfigurationForFile(System.String)">
            <summary>
            The filename contains directory parts. Recursively scan the parent directories to collect values,
            using depth-first collections, then, replace local override parameters
            </summary>
            <param name="filename"></param>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.MsBuild.TransformConfigTask.Transformations">
            <summary>
            One or more transformation files to be applied to each of the sourcefiles.
            </summary>
        </member>
        <member name="T:GoodStuff.Net.IPUtility">
            <summary>
            A utility class to filter and compare IP adresses.
            </summary>
        </member>
        <member name="M:GoodStuff.Net.IPUtility.VerifyIP(System.String)">
            <summary>
            Verifies if the allowedIP matches the UserHostAddres of the current HttpRequest
            </summary>
            <param name="allowedIPs">single IPaddress. </param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Net.IPUtility.VerifyIP(System.String[])">
            <summary>
            Verifies if the UserHostAddres of the current HttpRequest matches at least one of the allowedIPs.
            </summary>
            <param name="allowedIPs">single IPaddress. </param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Net.IPUtility.Match(System.String,System.String)">
            <summary>
            Matches the sourceIP against the comparteTo-IP. Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask - matches if the sourceIP falls within the given subnetmask)
            </summary>
            <param name="sourceIP">The source IPaddress. Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask)</param>
            <param name="compareTo">The IPaddress (exact or with subnetmask) to compare to. Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask)</param>
            <returns>a Boolean indicating whether the source IP matches the 'compareTo'-IPAddress or falls within the given IPaddress and subnetmask.</returns>
        </member>
        <member name="M:GoodStuff.Net.IPUtility.MatchAny(System.String,System.String[])">
            <summary>
            Matches the sourceIP against an array of "comparteTo-IP's". Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask - matches if the sourceIP falls within the given subnetmask)
            </summary>
            <param name="sourceIP">The source IPaddress. Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask)</param>
            <param name="compareTo">The IPaddress (exact or with subnetmask) to compare to. Format can be "192.168.100.50" (exact IP) or "127.0.0.0/24" (IP with subnetmask)</param>
            <returns>a Boolean indicating whether the source IP matches at least one of the 'compareTo'-IPAddress or falls within the given IPaddress and subnetmask.</returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.ValidatorExtension">
            <summary>
            UI-Less asp-net control that extends all validators with the ability to update the style
            of the control and the associated label
            To associate the label with the validator, add the 'validatorLabel='[clientid]' to the validator.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.RollOverButton">
            <summary>
            A hyperlink with an image that changes when the mouse hovers the link.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RollOverButton.ImageOnUrl">
            <summary>
            The URL of the image when the mouse is over the link
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RollOverButton.ImageUrl">
            <summary>
            The URL of the image that is shown.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.RollOverButton.NavigateUrl">
            <summary>
            The url that is navigated to when this link is clicked.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CaptchaImageHandler">
            <summary>
            Summary description for CaptchaImageHandler.
            </summary>
        </member>
        <member name="T:GoodStuff.Data.Linq.LinqToSqlRepository`1">
            <summary>
            Base class which can be used in a LinqToSql solution. The purpose of this baseclass is to be forced to think about objecttracking and dataloadoptions.
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.#ctor">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.CreateDataContext">
            <summary>
            Should return a DataContext, without any LoadOptions preloaded.
            </summary>
            <returns>a DataContext which we can use.</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.CreateFullDataLoadOptions">
            <summary>
            Forces to retrieve full dataloadoptions, so including all delayed loaded properties. Will only be used if the DataContext is retrieved from
            the base class with fullDataLoadOptions=true. Otherwise this method isn't invoked.
            </summary>
            <returns>collection of DataLoadOptions which will return all properties and related data.</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.GetDataContext(System.Boolean,System.Boolean)">
            <summary>
            Get's the DataContext. Creates a DataContext (implemented by subclass) and enable Traceoutput when the application is compiled in DEBUG mode.
            </summary>
            <param name="objectTracking">use objectTracking only when you're going go to submit changes to the datacontext.
            When objecttracking is set to false, performance will be better. When objecttracking is false, no
            related/subdata will be loaded in a smart way. In that case, ensure your're applying the right
            dataloadoptions by yourself.</param>
            <param name="fullDataLoadOptions">Do we have to load full dataloadoptions retrieved by CreateFullDataLoadOptions()? Should
            only be the case when retrieving all properties and related/subdata of an object. When false, no DataLoadOptions will be loaded.</param>
            <returns>DataContext with objecttracking true/false and optional full DataLoadOptions</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.GetDataContext(System.Boolean,System.Data.Linq.DataLoadOptions)">
            <summary>
            Get's the DataContext. Creates a DataContext (implemented by subclass) and enable Traceoutput when the application is compiled in DEBUG mode.
            </summary>
            <param name="objectTracking">use objectTracking only when you're going go to submit changes to the datacontext.
            When objecttracking is set to false, performance will be better. When objecttracking is false, no
            related/subdata will be loaded in a smart way. In that case, ensure your're applying the right
            dataloadoptions by yourself. When you don't want to use DataLoadOptions, specify null </param>
            <param name="dataLoadOptions">dataLoadOptions which will be applied to the datacontext</param>
            <returns>DataContext with objecttracking true/false and specified DataLoadOptions</returns>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.BeginTransaction">
            <summary>
            Starts a database-transaction. Throws when there already is an open transaction
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.BeginTransaction(System.Data.IsolationLevel)">
            <summary>
            Starts a database-transaction with the specified isolationlevel. Throws when there already is an open transaction
            </summary>
            <param name="isolationLevel">the isolationlevel of the transaction</param>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.RollBack">
            <summary>
            Revert/Rollback the current database-transaction. Throws when there is no current transaction
            </summary>
        </member>
        <member name="M:GoodStuff.Data.Linq.LinqToSqlRepository`1.Commit">
            <summary>
            Commits the current transaction to the database. Throws when there is no current transaction
            </summary>
        </member>
        <member name="M:GoodStuff.IDateRangeExtensions.Clip(GoodStuff.IDateRange,GoodStuff.IDateRange)">
            <summary>
            Clips the daterange so it never exceeds the second range
            </summary>
            <param name="range1"></param>
            <param name="range2"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionHandlerSqlViewer">
            <summary>
            HttpHandler to show the most-recent messages in the Sql Log.
            </summary>
            <remarks>
            &lt;add verb="GET" path="Exceptions.axd" type="GoodStuff.Diagnostics.ExceptionHandlerSqlViewer, GoodStuff"/&gt;
            </remarks>
        </member>
        <member name="M:GoodStuff.Data.DataContextBuilder.DataContextWrapper.Where``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
            <summary>
            Shorthand for .Select.Where.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="expression"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Data.DataContextBuilder.DataContextWrapper.Any``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
            <summary>
            Shorthand for .Select.Any.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="expression"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Data.DataContextBuilder.DataContextWrapper.Single``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
            <summary>
            Shorthand for .Select.Single.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="expression"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Data.DataContextBuilder.DataContextWrapper.SingleOrDefault``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
            <summary>
            Shorthand for .Select.SingleOrDefault.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="expression"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.TextboxExtensions">
            <summary>
            Extenstion which can be used on a System.Web.UI.WebControls.TextBox
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDateNullable(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to a DateTime object. It throws on invalid input. Uses the nl-NL culture by default
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDateNullable(System.Web.UI.WebControls.TextBox,System.Globalization.CultureInfo)">
            <summary>
            Convert a input from a textbox to a DateTime object. It throws on invalid input
            </summary>
            <param name="textbox"></param>
            <param name="culture">Spefic culture</param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDate(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to a (optional) DateTime object. It throws on invalid input. Dateformat (dd-MM-yyyy, nl-NL culture)
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDate(System.Web.UI.WebControls.TextBox,System.Globalization.CultureInfo)">
            <summary>
            Convert a input from a textbox to a (optional) DateTime object. It throws on invalid input. Dateformat is based on "ShortDatePattern" of the given culture
            </summary>
            <param name="textbox"></param>
            <param name="culture">specific culture</param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsIntegerNullabe(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to an (optional) Integer (Int32) object. 
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsInteger(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to an Integer (Int32) object. 
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsLongNullabe(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to an (optional) Long (Int64) object. 
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsLong(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to an Long (Int64) object. 
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsGuidNullable(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to a (optional) GUID object. 
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDecimalNullable(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to a decimal object. It throws on invalid input. Uses the nl-NL culture by default
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDecimalNullable(System.Web.UI.WebControls.TextBox,System.Globalization.CultureInfo)">
            <summary>
            Convert a input from a textbox to a decimal object. It throws on invalid input
            </summary>
            <param name="textbox"></param>
            <param name="culture">specific culture</param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDecimal(System.Web.UI.WebControls.TextBox)">
            <summary>
            Convert a input from a textbox to a (optional) decimal object. It throws on invalid input. Seperator is used from the nl-NL culture
            </summary>
            <param name="textbox"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.Controls.TextboxExtensions.TextAsDecimal(System.Web.UI.WebControls.TextBox,System.Globalization.CultureInfo)">
            <summary>
            Convert a input from a textbox to a (optional) decimal object. It throws on invalid input. Seperator is based on the given culture
            </summary>
            <param name="textbox"></param>
            <param name="culture">specific culture</param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Web.Controls.SumColumn">
            <summary>
            A custom column that act as 'totalizer'footercolumn within a DataGrid. It can show the sum, average or count of a column.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumColumn.#ctor">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumColumn.InitializeCell(System.Web.UI.WebControls.TableCell,System.Int32,System.Web.UI.WebControls.ListItemType)">
            <summary>
            Override the InitializeCell of the base BoundColumn
            </summary>
            <param name="cell"></param>
            <param name="columnIndex"></param>
            <param name="itemType"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumColumn.CellItemDataBound(System.Object,System.EventArgs)">
            <summary>
            Eventhandler for each cell that is bounded.
            </summary>
            <param name="sender"></param>
            <param name="e"></param>
        </member>
        <member name="M:GoodStuff.Web.Controls.SumColumn.GetUnderlyingValue(System.Object)">
            <summary>
            GetUnderlyingValue
            </summary>
            <param name="dataItem"></param>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.ShowSum">
            <summary>
            Show the sum of a column (default = true)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.ShowCount">
            <summary>
            Show to count of a column (default = false)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.ShowAverage">
            <summary>
            Show to average of a column (default = false)
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.LabelSum">
            <summary>
            The prefix for the sum value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.LabelAverage">
            <summary>
            The prefix for the average value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.LabelCount">
            <summary>
            The prefix for the count value
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.SumColumn.CssClass">
            <summary>
            The CSS class to apply to this specific column. Will be applied to the cell.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:GoodStuff.Web.Controls.MaskedEmailDisplayText" -->
        <member name="M:GoodStuff.Web.Controls.MaskedEmailDisplayText.Render(System.Web.UI.HtmlTextWriter)">
            <summary>
            Renders a javascript for showing the emailaddress
            </summary>
            <param name="writer"></param>
        </member>
        <member name="P:GoodStuff.Web.Controls.MaskedEmailDisplayText.Email">
            <summary>
            Full E-mailaddress to display with use of javascript.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ConditionalLinkButton">
            <summary>
            Een variant van de bekende LinkButton die geen link is wanneer deze disabled is.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.ConditionalImage">
            <summary>
            Een Image control die 2 gedaanten kan aannemen. Afhankelijk van een op te
            geven conditie worden een ander image getoond.
            </summary>
        </member>
        <member name="T:GoodStuff.Web.Controls.CommandMenuItem">
            <summary>
            Helper class for the CommandMenu control
            </summary>
        </member>
        <member name="T:GoodStuff.Web.StateServer`1">
            <summary>
            Provides services for alternative Strongly-typed session state based on an encrypted cookie.
            Time-out is fixed by configuration. This class is to be used as a static member.
            </summary>
        </member>
        <member name="M:GoodStuff.Web.StateServer`1.Get">
            <summary>
            Getting a state object also refreshes the timeout.
            </summary>
            <typeparam name="T"></typeparam>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Web.IViewLocator.Locate``1(System.String)">
            <summary>
            Returns the default view for the given controller
            </summary>
            <typeparam name="TView"></typeparam>
        </member>
        <member name="T:GoodStuff.Web.Controls.PopupPanel">
            <summary>
            A popup panel is not always visible but instead connected via a PopupButton.
            the panel is then shown as an absolute positioned layer in the content.
            </summary>
        </member>
        <member name="P:GoodStuff.Web.Controls.PopupPanel.Shown">
            <summary>
            Determines the initial state of the the popup panel.
            </summary>
        </member>
        <member name="T:GoodStuff.Providers.SmtpMessageConfigurationEntry">
            <summary>
            Contains specific configuration data for a known messaging class.
            </summary>
        </member>
        <member name="M:GoodStuff.Providers.SmtpMessageConfigurationEntry.ToString">
            <summary>
            This is required for the generic collection to work because this returns the Key column.
            </summary>
            <returns></returns>
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.Name">
            <summary>
            The name (or MessageClass) of the template
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.From">
            <summary>
            A formatstring that is used to construct the from address of an smtp message. 
            When a property 'user' is defined in the message, use "{user}" to use that property as the FROM address.
            </summary>
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.To">
            <summary>
            A formatstring that is used to construct the recipient address of an smtp message. 
            When a property 'user' is defined in the message, use "{user}" to use that property as the TO address.
            </summary>       
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.CC">
            <summary>
            A formatstring that is used to construct the copy address of an smtp message. 
            When a property 'user' is defined in the message, use "{user}" to use that property as the CC address.
            </summary>       
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.BCC">
            <summary>
            A formatstring that is used to construct the recipient BCC-address of an smtp message. 
            When a property 'user' is defined in the message, use "{user}" to use that property as the BCC address.
            </summary>       
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.Subject">
            <summary>
            A formatstring that is used to construct the subject of an smtp message. 
            When a property 'subject' is defined in the message, use "Message relating {subject}" to use that property as the subject.
            </summary>       
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.TemplateFile">
            <summary>
            The name of file that contains the template that is used to construct the message body. The filename is considered
            relative to the root of the webapplication.
            </summary>
            <example>
            When a property 'name' is defined in the message, you can use "Hi {name}," to use that property in the mail template.
            </example>
        </member>
        <member name="P:GoodStuff.Providers.SmtpMessageConfigurationEntry.AsHtml">
            <summary>
            When true the resulting mail is sent as HTML markup.
            </summary>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerModule.AddExceptionHandler(GoodStuff.Diagnostics.IExceptionHandler)">
            <summary>
            To add a custom handler, register your implementation once in global.asax or in a HttpModule/Handler.
            </summary>
            <param name="handler"></param>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerModule.LogError(System.Exception)">
            <summary>
            External entry point so you can log your own exception with the handler.
            </summary>
            <param name="error"></param>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerModule.MatchesExcludeRules(System.Exception,System.Collections.Generic.IList{GoodStuff.Diagnostics.ExceptionHandlerExclude},System.Web.HttpRequest)">
            <summary>
            Takes the error and check the excluderules from the configuration and returns a boolean indicating when at least one rule has been matched
            </summary>
            <param name="error">The error that is thrown</param>
            <param name="excludes">The excluderules</param>
            <param name="request">The HttpRequest-object of the current request</param>
            <returns>A booleand indicating at least one excluderule has been matched</returns>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerModule.MatchType(System.Type,System.String)">
            <summary>
            Matches the sourceType against the given typename. Return true if a match is found.
            </summary>
            <param name="sourceType"></param>
            <param name="compareToTypeName"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionHandlerModule.MatchMessage(System.String,System.String,GoodStuff.Diagnostics.ExceptionHandlerExceptionMessageCompareMethod)">
            <summary>
            Matches the sourceMessage against the compareToMessage with the given ExceptionHandlerExceptionMessageCompareMethod
            </summary>
            <param name="sourceMessage"></param>
            <param name="compareToMessage"></param>
            <param name="compareType"></param>
            <returns></returns>
        </member>
        <member name="T:GoodStuff.Diagnostics.ExceptionExtensions">
            <summary>
            Extensionmethods for display information about Exceptions
            </summary>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionExtensions.ToString(System.Exception,System.String)">
            <summary>
            Returns the differtent parts of the stacktrace with the given lineseperator
            </summary>
            <param name="exception"></param>
            <param name="lineSeparator"></param>
            <returns></returns>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionExtensions.ToString(System.Exception,System.Text.StringBuilder,System.String)">
            <summary>
            Returns the differtent parts of the stacktrace with the given lineseperator based on the referenced StringBuilder
            </summary>
            <param name="exception"></param>
            <param name="sb"></param>
            <param name="lineSeparator"></param>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionExtensions.AddData``1(System.Exception,System.Linq.Expressions.Expression{System.Func{``0}})">
            <summary>
            Adds name and the value of a variable to an existing Exception. It also includes the name of currently executing method.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="exception"></param>
            <param name="propertySelector"></param>
        </member>
        <member name="M:GoodStuff.Diagnostics.ExceptionExtensions.AddData(System.Exception,System.String,System.Object)">
            <summary>
            Adds a name and a value of a variable to an existing Exception. It also includes the name of currently executing method.
            </summary>
            <param name="exception"></param>
            <param name="name"></param>
            <param name="value"></param>
        </member>
    </members>
</doc>
